package es.unileon.rnag.jgen.operadores;

import es.unileon.rnag.jgen.*;
import java.util.*;

/**
 * Clase abstracta base para los operadores que implementan la selecci&oacute;n
 * @author Abel Mayorga Gonz&aacute;lez
 * @author Sergio Fern&aacute;ndez Mart&iacute;nez
 * @version 1.0
 */
public abstract class Seleccion implements Operador{
	protected float _porcentaje;
	/**
	 * Constructor abstracto. Establece el porcentaje de seleccionados
	 * @param porcentaje: Porcentaje de seleccionados en tanto por uno
	 */
	public Seleccion(float porcentaje){
		_porcentaje = porcentaje;
	}
	
	@Override
	public abstract List<Cromosoma> operar(int generacion, List<Cromosoma> poblacion);
	
	@Override
	public List<Cromosoma> getSiguienteGeneracion(){
		return new ArrayList<Cromosoma>();
	}
}
